package com.ysq.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ysq.entity.Category;
import com.ysq.entity.Employee;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * ClassName: CategoryService
 * Package: com.ysq.service
 * Description:
 *
 * @Author YSQ
 * @Create 2023/1/3 - 10:59
 */
public interface CategoryService {
    /**
     * 新增分类业务
     * @param category 接收前端传来的信息
     * @return 返回true代表添加成功
     */
    boolean save(Category category);

    /**
     * 分类管理分页查询
     * @param page 第几页数据
     * @param pageSize 一页几条数据
     * @return 返回page, 里面包含分页所有信息
     */
    Page<Category> selectPage(int page, int pageSize);

    /**
     * 删除分类业务
     * @param id 接收前端传来的分类ID
     * @return 返回true表示删除成功, false表示删除失败
     */
    boolean delete(Long id);

    /**
     * 修改分类业务
     * @param category 接收前端传来category对象, 里面包含ID数据
     * @return 返回true表示修改成功, false表示修改失败
     */
    boolean update(Category category);

    /**
     * 根据种类查询分类数据
     * @param category 里面封装了前端发送来的条件, 按种类查询就会封装type属性
     * @return 返回查询到的结果集合
     */
    List<Category> selectByType(Category category);
}
